package com.py.credit.service;

import java.util.List;
import java.util.Map;

import com.py.credit.entity.AreaEntity;
import com.py.credit.entity.SContentInfo;
import com.py.credit.entity.TableResult;
import com.py.credit.entity.common.TreeObj;
import com.py.framework.core.common.Page;

public interface ContentService {

	void updateCommonContentStatus(String status, int id);

	void addBookCommonContent(SContentInfo sContentInfo, List<TreeObj> contentNode);

	List<TreeObj> getCommonContentTree();

	void bookContent(long regionId, int contentId, long userId, long deptId);

	List<TreeObj> getCommonContentTree(String rootId, String sharingType,String informationType);

	/**
	 * @param ids
	 */
	void delBookContent(String ids);

	List<Map<String, Object>> getBookContentListForPage(List<String> showColumns, String[] additioanlColumns,
			String condition, Page page, long regionId);

	void updateBookContent(SContentInfo sContentInfo, List<TreeObj> nodeList);

	/**
	 * @param id
	 * @return
	 */
	SContentInfo getBookContentInfo(int id);

	/**
	 * @param id
	 * @param status
	 */
	void updateBookContentStatus(String id, String status);

	/**
	 * @param id
	 * @return
	 */
	List<TreeObj> getBoookContentDetail(int id);

	/**
	 * @param id
	 * @return
	 */
	List<Map<String, Object>> getSubscriptionInfo(String id);

	/**
	 * @param sContentInfo
	 */
	void addCommonContent(SContentInfo sContentInfo);

	/**
	 * @param tableId
	 * @param contentId
	 * @return
	 */
	TableResult getTableColumns(Integer tableId, Integer contentId, String tipId);

	/**
	 * @param regionId
	 * @return
	 */
	List<TreeObj> getBoookContentByRegionId(String regionId);

	/**
	 * @param kId
	 * @return
	 */
	List<TreeObj> getCommonContent(String kId);

	/**
	 * @return
	 */
	SContentInfo getCommonContentInfo();

	/**
	 * @param kId
	 */
	List<Map<String, Object>> getCommonContentResouceNum(String kId);

	/**
	 * @param kId
	 * @return
	 */
	List<Map<String, Object>> getBookContentResouceNum(String kId, String regionKey);

	/**
	 * @return
	 */
	List<Map<String, Object>> getCommonContentTableNum();

	/**
	 * @return
	 */
	List<TreeObj> getCommonContentDept();

	/**
	 * @param sContentInfo
	 * @param nodeList
	 */
	void addCommonContent(SContentInfo sContentInfo, List<TreeObj> nodeList);

	/**
	 * @return
	 */
	List<TreeObj> getOriginalContentTree();

	/**
	 * @param showColumns
	 * @param strings
	 * @param condition
	 * @param page
	 * @return
	 */
	List<Map<String, Object>> getCommonContentListForPage(List<String> showColumns, String[] strings, String condition,
			Page page);

	/**
	 * @param id
	 * @return
	 */
	List<TreeObj> getCommonContentDetail(int id);

	/**
	 * @param id
	 * @return
	 */
	SContentInfo getCommonContentInfo(int id);

	/**
	 * @param id
	 * @return
	 */
	List<TreeObj> getCommonContentTree(int id);

	/**
	 * @param sContentInfo
	 * @param nodeList
	 */
	void updateCommonContent(SContentInfo sContentInfo, List<TreeObj> nodeList);

	/**
	 * @param ids
	 */
	void delCommonContent(String ids);

	/**
	 * 功能描述: 新版本审核结果
	 *
	 * @param id 版本id
	 * @param checkStatus 启用状态
	 * @author YaoS
	 * @date 19/4/4 14:33
	 */
	void checkCommonContent(String id, String checkStatus);

	TableResult getExcel(int tableId, String title);

	
	/**
	 * @Title: getAllArea
	 * @Description: TODO(这里用一句话描述这个方法的作用)
	 * @param @return    设定文件
	 * @return List<AreaEntity>    返回类型
	 * @throws
	*/
	
	List<AreaEntity> getAllArea();

}